When a current block (or macroblock) is encoded/decoded in intra mode, a prediction block is formed based on adjacent samples from previously encoded/decoded and reconstructed blocks. The prediction block is subtracted from the current block prior to encoding. When the current block is decoded in intra mode, a prediction block is formed based upon samples from previously decoded and reconstructed blocks. The prediction block is added to the current block following decoding.
A prediction block for encoding/decoding luminance can be formed for each 4×4 sub-block of a macroblock or for the entire 16×16 macroblock. Conventional approaches restrict the availability of some modes when encoding 4×4 sub-blocks. Having alternative modes available for comparison when making an estimation decision can improve compression accuracy and efficiency.
It would be desirable to have a solution that would allow as many modes for intra prediction as possible for the number of samples available.